﻿Partial Public Class _Default
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Panel1.Visible =False 
        Panel1.UpdateAfterCallBack =True 

        If Not Page.IsPostBack Then
            Session.Abandon()
            CargarEspecialidad()

            Examenes.Attributes.Add("onclick", "javascript:url(event);")
            Txt_Medico.Attributes.Add("onkeypress", "if (event.keyCode == 13 ){return false;}")
        End If
    End Sub
    Sub Carg_Carga_Grilla()

        pnl_mensaje.Visible = False
        pnl_mensaje.UpdateAfterCallBack = True

        Dim exec As New DotNetDal.SQLPersistence(False, "cnn", DotNetDal.SQLPersistence.Provider.SQLCLIENT)
        Dim rp As New DotNetResponse.SQLPersistence

        If Session("especialidad") = "" Then
            rp.StoredProcedure = "SP_AME_Get_Med_Med"
            rp.AddParametro(Session("medico"))
        Else
            rp.StoredProcedure = "SP_AME_Get_Med_Esp"
            rp.AddParametro(Session("especialidad"))
        End If

        exec.ExecuteDataTable(rp)

        If rp.TieneDatos Then
            grcargamed.DataSource = rp.DtTable
            grcargamed.DataBind()
            grcargamed.UpdateAfterCallBack = True


            AplicaconfirmacionReserva()

        End If
        If rp.Errores Then
            'mostrar mensaje de error
            pnl_mensaje.Visible = True
            pnl_mensaje.UpdateAfterCallBack = True
            Me.lbl_mensaje.Text = "Ocurrió un error al buscar horas"
        Else
            If Not rp.TieneDatos Then
                grcargamed.DataSource = Nothing
                grcargamed.DataBind()
                grcargamed.UpdateAfterCallBack = True

                pnl_mensaje.Visible = True
                pnl_mensaje.UpdateAfterCallBack = True
                Me.lbl_mensaje.Text = "No se han encontrado horas disponibles"
            End If
            'su clave ha sido enviada el correo electronico
        End If
        rp.Dispose()
    End Sub


    Protected Sub grcargamed_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles grcargamed.SelectedIndexChanged

        lbl_medico.Text = grcargamed.SelectedItem.Cells(0).Text
        lbl_medico.UpdateAfterCallBack = True

        Dim Dia As String = ""
        Select Case (Weekday(grcargamed.SelectedItem.Cells(3).Text.Substring(0, 10).Trim))
            Case 1
                Dia = "Domingo"
            Case 2
                Dia = "Lunes"
            Case 3
                Dia = "Martes"
            Case 4
                Dia = "Miercoles"
            Case 5
                Dia = "Jueves"
            Case 6
                Dia = "Viernes"
            Case 7
                Dia = "Sábado"
        End Select

        lbl_nombre_dia.Text = Dia
        lbl_nombre_dia.UpdateAfterCallBack = True

        lbl_hora_sugerida.Text = grcargamed.SelectedItem.Cells(3).Text.Substring(11, 5).Trim
        lbl_hora_sugerida.UpdateAfterCallBack = True

        lbl_fecha_sugerida.Text = grcargamed.SelectedItem.Cells(3).Text.Substring(0, 10).Trim
        lbl_fecha_sugerida.UpdateAfterCallBack = True


        Panel1.Visible = True
        Panel1.UpdateAfterCallBack = True


    End Sub


    Sub CargarEspecialidad()
        Dim exec As New DotNetDal.SQLPersistence(False, "cnn", DotNetDal.SQLPersistence.Provider.SQLCLIENT)
        Dim rp As New DotNetResponse.SQLPersistence
        rp.StoredProcedure = "SP_AME_Get_Especialidades"        
        exec.ExecuteDataTable(rp)
        If rp.TieneDatos Then
            cmb_Especialidad.DataTextField = "nombre"
            cmb_Especialidad.DataValueField = "codigo"
            cmb_Especialidad.DataSource = rp.DtTable
            cmb_Especialidad.UpdateAfterCallBack = True
            Me.cmb_Especialidad.DataBind()
        End If
        If rp.Errores Then
            'envío mensaje de error
        End If

    End Sub

    Protected Sub Img_Ir_Especialidad_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles Img_Ir_Especialidad.Click
        If cmb_Especialidad.SelectedItem.Text = "" Then
            Exit Sub
        End If
        Session("especialidad") = Me.cmb_Especialidad.SelectedValue
        Session("medico") = ""
        Carg_Carga_Grilla()
        'Response.Redirect("./aspx/Wfrm_Paso2.aspx", True)
    End Sub

    Protected Sub Img_Ir_Medico_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles Img_Ir_Medico.Click
        If Txt_Medico.Text = "" Then
            Exit Sub
        End If
        Session("especialidad") = ""
        Session("medico") = Txt_Medico.Text.Trim
        Carg_Carga_Grilla()
    End Sub

    Sub AplicaconfirmacionReserva()
        '2
        Dim i As Integer
        For i = 0 To grcargamed.Items.Count - 1
            Dim mensaje As String = "Desea reservar hora el " & Format(CDate(grcargamed.Items(i).Cells(3).Text), "dd-MM-yyyy") & " a las " & Format(CDate(grcargamed.Items(i).Cells(3).Text), "HH:mm")

            'DirectCast(grcargamed.Items(i).Cells(4).Controls(1), Anthem.ImageButton).Attributes.Add("onclick", "if (confirm('" & mensaje & "')) { document.getElementById('txt_mensaje').value ='Y'  }else{document.getElementById('txt_mensaje').value ='N'};return true")
        Next

    End Sub

    Protected Sub Img_Ir_Medico1_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles Img_Ir_Medico1.Click
        Session("especialidad_codigo") = grcargamed.SelectedItem.Cells(5).Text
        Session("ptd_rut") = grcargamed.SelectedItem.Cells(6).Text
        Session("prox_hora") = grcargamed.SelectedItem.Cells(3).Text
        Session("centro_medico") = grcargamed.SelectedItem.Cells(2).Text
        Session("profesional") = grcargamed.SelectedItem.Cells(0).Text
        Session("especialidad_texto") = grcargamed.SelectedItem.Cells(1).Text

        Session("default") = "default"

        Session("txt_mensaje") = "N"

        Response.Redirect("./aspx/Wfrm_Paso3.aspx", True)

    End Sub

    Protected Sub Img_Ir_Medico0_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles Img_Ir_Medico0.Click
        Session("especialidad_codigo") = grcargamed.SelectedItem.Cells(5).Text
        Session("ptd_rut") = grcargamed.SelectedItem.Cells(6).Text
        Session("prox_hora") = grcargamed.SelectedItem.Cells(3).Text
        Session("centro_medico") = grcargamed.SelectedItem.Cells(2).Text
        Session("profesional") = grcargamed.SelectedItem.Cells(0).Text
        Session("especialidad_texto") = grcargamed.SelectedItem.Cells(1).Text
        Session("default") = Nothing
        Session("txt_mensaje") = "Y"

        Response.Redirect("./aspx/Wfrm_Paso3.aspx", True)

    End Sub

  

   
End Class